﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AtDevice
{
    public delegate void ModeChangedDelegate(NetworkEnum network);
    public delegate void FlowInfoDelegate(int uptime, int dlSpeed, int ulSpeed, long dlBytes, long ulBytes);

    /// <summary>
    /// Interface to Huawei specific data.
    /// </summary>
    public interface IHuaweiInterface
    {
        /// <summary>
        /// Event that occurs when the device reports that network type is changed.
        /// </summary>
        event ModeChangedDelegate ModeChanged;
        /// <summary>
        /// Event that occurs when the device reports the flow information.
        /// </summary>
        event FlowInfoDelegate FlowUpdated;

        /// <summary>
        /// Get or set the interval (in ms) how often the flow information is updated.
        /// </summary>
        int FlowUpdateInterval { get; set; }
    }
}
